%%% -*- mode: erlang -*-
-ifndef(rtps_spdp_hrl).
-define(rtps_spdphrl, true).

%% 8.5.3.2 SPDPdiscoveredParticipantData

-record(participant_proxy, 
	{protocol_version :: rtps:protocol_version(),
	 guid_prefix :: rtps:guid_prefix(),
	 vendor_id :: rtps:vendor_id(),
	 expects_inline_qos :: boolean(),
	 metatraffic_unicast_locator_list :: [rtps:locator()] | undefined,
	 metatraffic_multicast_locator_list :: [rtps:locator()],
	 default_unicast_locator_list :: [rtps:locator()] | undefined,
	 default_multicast_locator_list :: [rtps:locator()],
	 available_builtin_endpoints :: [rtps:available_builtin_endpoints()],
	 manual_liveliness_count :: rtps:count()}).
	
-record(participant_builtin_topic_data,
	{key :: rtps_qos:qos(),
	 user_data :: rtps_qos:qos()}).

-record(discovered_participant_data,
	{participant_proxy :: #participant_proxy{},
	 participant_builtin_topic_data :: [#participant_builtin_topic_data{}],
	 lease_duration :: rtps:duration(), participant :: pid() | undefined}).

-endif.
